package com.javasm.springmybatis.timer;

import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
import org.springframework.scheduling.support.CronTrigger;

/**
 * @Author：longjinyi
 * @Version：1.0
 * @Date：2021/12/30-9:21
 * @Since:jdk1.8
 * @Description:
 */
//第三方的 springTask
//指定具体时间执行: corn 表达式
public class StringScheTest {

    public static void main(String[] args) throws Exception {

        //   秒    分   时   日   月   周     其中0/5   0延迟时间    5间隔时间
        //  0/5   *    *    *    *    *
        //  0     0    *    *    *    *      每月每周每日每时执行一次
        //  0     0   8-10  *    *    *      每天的8点，9点，10点去执行一次
        //  0     0   6,19  *    *    *      每天的早上6点，晚上7点去执行一次
        //  0     59   23   L    *    ?      每个月的最后一天的23点59分去执行一次

        //通过corn 表达式，可以指定什么时候去执行指定的任务
        //注意：
        //秒的时间必须指定
        //周或者月写一个就可以了
        ThreadPoolTaskScheduler taskScheduler = new ThreadPoolTaskScheduler();
        taskScheduler.initialize();
        taskScheduler.setPoolSize(30);
        System.out.println(taskScheduler);

        taskScheduler.schedule(new Runnable() {
            @Override
            public void run() {
                System.out.println("sssss");
            }
            //CronTrigger:触发器，指定什么时候去触发schedule方法里面的打印
        }, new CronTrigger("0/5 * * * * *"));


    }

}
